<?php
class EstadisticasController extends AppController {

	var $name = 'Estadisticas';
	var $uses = array('Estadistica','Client','Person','Indicator');

	function save($indicador = null, $recordanalytics = null) {
		$this->Estadistica->recursive = 0;

		if (!$indicador) {
			exit;
		}

		// Averiguo si existe el Indicador
		$registro = $this->Estadistica->find('all', array(
				'conditions' => array(
									'Estadistica.client_id' => $this->Session->read('ClientesUsuarioLogueado.id'),
									'Estadistica.user_id' => $this->Auth->user('id'),
									'Estadistica.indicator_id' => $indicador,
									'Estadistica.fecha' => date("Y-m-d")
								),
				'fields' => array('Estadistica.id','Estadistica.views')
		) );


		// Si aun no se cargo el Indicador
		if(empty($registro)){

			// Seteo datos que no vienen del Formulario
			$this->Estadistica->set(array(
				'fecha' => date("Y-m-d"),
				'indicator_id' => $indicador,
				'views' => 1,
				'client_id' => $this->Session->read('ClientesUsuarioLogueado.id'),
				'user_id' => $this->Auth->user('id'),
			));

			// Guardo
			$this->Estadistica->save($this->data);

		}else{

			// Obtengo el Registro
			$this->Estadistica->id = $registro[0]['Estadistica']['id'];

			// Actualizo el Registro
			$this->Estadistica->saveField('views', ($registro[0]['Estadistica']['views'] + 1) );
		}


		// Si no hay que registrar analiticas
		if (!$recordanalytics) {
			$this->autoRender=false;			
		}else{ // Si guardo analiticas
			$this->layout = 'soloanalytics';
		}


	}
}
?>